<?php

require_once '../db/Conexion.php';

//gestiona la accion solicitada 
function accion_controller() {
    $accion = FALSE;
    $moneda_peticion = helper_data();
    $accion = $moneda_peticion['accion'];
    if ($accion) {
        switch ($accion) {
            case 'save' :
                guardar($moneda_peticion);
                break;
            case 'delete' :
                eliminar($moneda_peticion['id']);
                break;
            case 'list' :
                listar();
                break;
            case 'edit' :
                editar($moneda_peticion['id']);
                break;
        }
    } else {
        die("ERROR: No se recibieron los parametros correspondientes.");
    }
}

//OBTIENE LOS DATOS DE POST
function helper_data() {
    $moneda = array();

    if (isset($_POST['id']))
        $moneda['id'] = $_POST['id'];
    if (isset($_POST['nombre']))
        $moneda['nombre'] = strtoupper($_POST['nombre']);
    if (isset($_POST['nombre_corto']))
        $moneda['nombre_corto'] = $_POST['nombre_corto'];
    if (isset($_POST['cotizacion']))
        $moneda['cotizacion'] = $_POST['cotizacion'];
    if (isset($_POST['principal']))
        $moneda['principal'] = $_POST['principal'];
    if (isset($_POST['multiplicar']))
        $moneda['multiplicar'] = strtoupper($_POST['multiplicar']);
    if (isset($_POST['accion']))
        $moneda['accion'] = $_POST['accion'];
    return $moneda;
}

//LISTADO
function listar() {
    $monedas = consultar("Select * from monedas as e ");
    require_once '../view/moneda/ListMonedas.php';
}

//GUARDAR
function guardar($moneda_peticion) {
    if (!$moneda_peticion['id']) {
        $query = "INSERT INTO monedas ( nombre, nombre_corto, cotizacion, principal, multiplicar) VALUES
                        (  '" . $moneda_peticion['nombre'] . "',
                           '" . $moneda_peticion['nombre_corto'] . "',
                           '" . $moneda_peticion['cotizacion'] . "',
                           '" . $moneda_peticion['principal'] . "', 
                           '" . $moneda_peticion['multiplicar'] . "');";
    } else {
        $query = "UPDATE monedas 
                                 SET nombre='" . $moneda_peticion['nombre'] . "',
                                     nombre_corto='" . $moneda_peticion['nombre_corto'] . "',
                                     cotizacion='" . $moneda_peticion['cotizacion'] . "', 
                                     principal='" . $moneda_peticion['principal'] . "', 
                                     multiplicar='" . $moneda_peticion['multiplicar'] . "'
                                 WHERE id=" . $moneda_peticion['id'] . " LIMIT 1;";
    }
    if (ejecutar($query)) {
        if ($moneda_peticion['principal']==1){
            actualizarMonedaPrincipal($moneda_peticion['id']);
        }
        listar();
    } else {
        die("Error: No se pudo Guardar el Registro!");
    }
}

//ELIMINAR
function eliminar($id) {
    $query = "DELETE FROM monedas WHERE id=" . $id . " LIMIT 1;";
    if (ejecutar($query)) {
        listar();
    } else {
        echo "Error: No se puede Eliminar este registro";
    }
}

//actualiza la moneda principal
function actualizarMonedaPrincipal($id) {
    $query = "UPDATE monedas  SET principal=0 WHERE id!=" . $id . ";";
    ejecutar($query);
}

//EDITAR
function editar($id) {
    $query = "Select * from monedas where id=" . $id;
    $moneda = consultar($query);
    require_once '../view/moneda/FormMoneda.php';
}

accion_controller();
?>
